home *** CD-ROM | disk | FTP | other *** search
/ Your Web Site Creator / Your Web Site Creator.iso / WebSite / data1.cab / Program_Executable_Files / scripts / util.dat < prev   
Encoding:
Text File  |  1999-01-13  |  21.3 KB  |  685 lines

  1. ;UTIL.DAT    Miscellaneous Functions
  2. [ChangeSiteStyle]
  3. SETTEMP styleNames = "Basic Starter@Red and Gray@Cool Pink@Orange Dream@Rainbow Sherbert@Mean Green@Luscious Lavender@Casual Blue@Western Hues@Autumn Leaves@Green Marbelicious@"
  4.  
  5. SETTEMP temp = currentStyle
  6. SETTEMP newStyleName = ""
  7.  
  8. BACKSTOP
  9. PAGE
  10. WIZPIC wizpics\wiztheme.gif
  11. TYPE LIST
  12. NAME temp
  13. DESCRIPTION Choose one of these designs to style your Web site.  This picks the graphics that display on the Home Page and the main pages linked from the home pages.\n\nThis does not affect the personal styling of each family member's pages.
  14. ARGUMENT "Basic Starter"@1@"wizpics\preview1.gif"
  15. ARGUMENT "Red and Gray"@2@"wizpics\preview2.gif"
  16. ARGUMENT "Cool Pink"@3@"wizpics\preview3.gif"
  17. ARGUMENT "Orange Dream"@4@"wizpics\preview4.gif"
  18. ARGUMENT "Rainbow Sherbert"@5@"wizpics\preview5.gif"
  19. ARGUMENT "Mean Green"@6@"wizpics\preview6.gif"
  20. ARGUMENT "Luscious Lavender"@7@"wizpics\preview7.gif"
  21. ARGUMENT "Casual Blue"@8@"wizpics\preview8.gif"
  22. ARGUMENT "Western Hues"@9@"wizpics\preview9.gif"
  23. ARGUMENT "Autumn Leaves"@10@"wizpics\preview0.gif"
  24. ARGUMENT "Green Marbelicious"@11@"wizpics\previewA.gif"
  25.  
  26. SET currentStyle = temp
  27. SETTEMP newStyleName = arrayelement( styleNames currentStyle )
  28.  
  29. IF temp > 9
  30.     IF temp = 10
  31.         SETTEMP currentStyle = "0";
  32.     ENDIF
  33.     IF temp = 11
  34.         SETTEMP currentStyle = "A";
  35.     ENDIF
  36. ENDIF
  37.  
  38.   ;reset vars for building homepage
  39. SETTEMP temp = currentStyle,".gif"
  40.  
  41. SET mf_pix = "wizpics\meetfam",temp
  42. SET fav_pix = "wizpics\favorit",temp
  43. SET pfav_pix = "wizpics\persfav",temp
  44. SET pas_pix = "wizpics\pastim",temp
  45. SET nws_pix = "wizpics\famnews",temp
  46. SET not_pix = "wizpics\famnotn",temp
  47. SET pnot_pix = "wizpics\newsvus",temp
  48. SET lnk_pix = "wizpics\famlink",temp
  49. SET pix_pix = "wizpics\photalb",temp
  50.  
  51. SETTYPE headerbar = normal
  52. SET headerbar = "wizpics\header",temp
  53. SETTYPE headerbar = picture
  54.  
  55. SETTYPE placard = normal
  56. SET placard = "wizpics\family",temp
  57. SETTYPE placard = picture
  58.  
  59. SETTYPE backdrop = normal
  60. SET backdrop = "backdrop\themes\main",temp
  61. SETTYPE backdrop = backdrop
  62.  
  63.  
  64.  
  65. ;xxxxxxxxxxxxxxxxxxxxx CHANGE USER SETTINGS xxxxxxxxxxxxxxxxxxxxxxxx
  66. [ModifyUserSettings]
  67. IF beenOnce <> 1
  68.   SETTEMP inpL1 = 1
  69. ENDIF
  70. ;text or picture for personal link page
  71. ;adjust publish settings
  72. ;add to list of family sites after a restore
  73.  
  74. IF skipExplanations = NN
  75.   SETTEMP exmodetxt = "&Switch to EXPERT mode"
  76. ELSE
  77.   SETTEMP exmodetxt = "&Switch to NOVICE mode"
  78. ENDIF
  79.  
  80. BACKSTOP ModSettings
  81.  
  82. PAGE
  83. WIZPIC wizpics\wiztheme.gif
  84. TYPE RADIOBUTTONSWITHTEXT
  85. NAME inpL1
  86. DESCRIPTION This allows you to make changes to the controls for the Homepage Expert and to other settings that affect you family Web site.
  87. ARGUMENT exmodetxt@1@"\nThis allows you to determine if certain questions will be skipped or not.\n\nWhen set to EXPERT, certain displays with information about 'why' are skipped.  When set to NOVICE, all displays are provided."
  88. ARGUMENT "Change &E-Mail address"@2@"\nYour home page contains an E-Mail address.  Choose this item to change the E-Mail address from its present value, which is ",email,"."
  89. ARGUMENT "Change Server &Host Settings"@3@"\nChoose this item to change the server on the Internet that holds your family Web site.\n\nYou would choose this if you have changed the location of your Web site, by changing ISPs or signing up for PlanetCyberspace."
  90. ARGUMENT "&Change color/font for Omit pictures"@4@"\nIf you choose to OMIT the picture of a family member, the wizard makes a picture with that person's name in it.\n\nThis setting lets you change the colors used in the picture and change the font that is used."
  91. ARGUMENT "Ser&vice Department"@5@"\nDO NOT CHOOSE THIS UNLESS TOLD BY TECHNICAL SUPPORT\n\nThis option is only for Expert's service personnel to use to help you.  It is very dangerous!"
  92. ARGUMENT "&Done with changes"@6@"\nChoose this item when you have finished making changes to the settings."
  93.  
  94. IF inpL1 <> 6
  95.   IF inpL1 = 1 ;adjust expert mode
  96.     IF skipExplanations = NN
  97.      SET skipExplanations = YY
  98.     ELSE
  99.      SET skipExplanations = NN
  100.     ENDIF
  101.     SAVEVARIABLES
  102.     ARGUMENT modulepath( "WWDATA.VAR" )
  103.     ARGUMENT skipExplanations
  104.   ENDIF
  105.  
  106.   IF inpL1 = 2 ;change Email address
  107.     SETTEMP temp = email
  108.     GOSUB GetEMail
  109.     IF temp <> email
  110.       BUSY 1
  111.       ARGUMENT "Please wait for a moment while the wizard rebuilds your home page to include the new E-Mail address."
  112.       GOSUB BuildHomePage     ;rebuild the home page (in HOMEPAGE.DAT)
  113.  
  114.       PROJECTSETTINGS
  115.       EMAIL   email
  116.  
  117.       BUILDLINKS
  118.  
  119.       BUSY 0
  120.     ENDIF
  121.   ENDIF
  122.  
  123.   IF inpL1 = 3
  124.     IF ftpSite = "" || ftpDir = "" || ftpUserID = "" || ftpPassword = ""
  125.     SET hasGatheredFTPInfo = NN
  126.     SET pub_type = ""
  127.     ENDIF
  128.     GOSUB InputFTPInfo
  129.     GOSUB StashSettings
  130.  
  131. ; ONLY set flag if they have entered all pieces of information
  132.     IF ftpSite <> "" && ftpDir <> "" && ftpUserID <> "" && ftpPassword <> ""
  133.     SET hasGatheredFTPInfo = YY
  134.     ENDIF
  135.     IF hasGatheredFTPInfo = NN
  136.     BACKSTOP
  137.     PAGE
  138.     WIZPIC wizpics\wizcast2.gif
  139.     TYPE DESCRIPTION
  140.     NOPREVIOUS
  141.     DESCRIPTION One or more of the pieces of required information were left blank.  You will not be able to publish your site (upload the files to the Web) until you have entered all of the required information.  This is just to let you know that the wizard is watching you.  I'll ask you again later for the required information.
  142.  
  143.     ENDIF
  144.   ENDIF    ;if inpL1 =3
  145.  
  146.   IF inpL1 = 4 ;colors and font for TEXT2PIX
  147.     GOSUB ChangeTextPixCfg
  148.   ENDIF
  149.  
  150.   IF inpL1 = 5
  151.     GOSUB ServiceDept
  152.   ENDIF
  153.  
  154.   SETTEMP beenOnce = 1
  155.   SETTEMP inpL1 = 6
  156.   GOTO ModifyUserSettings
  157. ENDIF
  158. SETTEMP beenOnce = 0
  159.  
  160.  
  161. ;xxxxxxxxxxxx SERVICE DEPARTMENT CHANGES xxxxxxxxxxxxxxxxx
  162. [ServiceDept]
  163. IF inpL1 = 5 ;show 1st time only
  164.   BACKSTOP
  165.   PAGE
  166.   WIZPIC wizpics\wizwarn.gif
  167.   TYPE DESCRIPTION
  168.   DESCRIPTION DO NOT PROCEED UNLESS DIRECTED BY EXPERT'S SERVICE PERSONNEL\n\nThe following section is provided to help our service personnel help you.\n\nIt can be very dangerous and destructive to your family Web site if misused.
  169.   SETTEMP inpL1 = 0
  170. ENDIF
  171.  
  172. SETTEMP temp = ""
  173. BACKSTOP
  174. PAGE
  175. NOSPELLCHECK
  176. WIZPIC wizpics\wizwarn.gif
  177. TYPE EDIT
  178. NAME temp
  179. PROMPT &Enter Varname:
  180.  
  181. COPY temp2 = eval( temp )
  182.  
  183. BACKSTOP
  184. PAGE
  185. WIZPIC wizpics\wizwarn.gif
  186. TYPE EDIT
  187. NAME temp2
  188. PROMPT New &Value:
  189.  
  190. IF temp2 <> eval( temp )
  191.   COPY eval( temp ) = temp2
  192.   MESSAGEBOX "Change Made.  Do another?"
  193.   ARGUMENT temp,2,2
  194.   IF temp = YY
  195.     GOTO ServiceDept
  196.   ENDIF
  197. ENDIF
  198. GOSUB SaveVariables
  199.  
  200. ;xxxxxxxxxxxxxxxxxxxxxxx CHANGE FONTS AND TEXT COLOR xxxxxxxxxxxxxxx
  201. [ChangeTextPixCfg]
  202. SETTEMP inpL2 = 4
  203. BACKSTOP
  204.  
  205. PAGE
  206. TYPE RADIOBUTTONSWITHTEXT
  207. WIZPIC wizpics\wiztheme.gif
  208. DESCRIPTION You can change the font, the color of the text, and the color of the background to modify the appearance of the pictures that are made when you omit a family member's photo.\n\nChoose one of these items to change.
  209. NAME inpL2
  210. ARGUMENT "&Font of the text"@1@"\nYou can choose any font on your system to use for the text picture that is made in place of a family member photograph."
  211. ARGUMENT "&Color of the text"@2@"\nYou can select the color which the text is drawn in.\n\nBe sure to choose a color with plenty of contrast to the background color."
  212. ARGUMENT "&Background color"@3@"\nYou can choose a background color on which the text will be drawn.\n\nBe sure to choose a color that provides plenty of contrast with the color of the text itself."
  213. ARGUMENT "&Done with changes"@4@"\nChoose this item when you are finished changing the colors and font."
  214.  
  215. IF inpL2 = 1
  216.   IF textPixFont = ""
  217.     SET textPixFont = "Times New Roman,32,1"  ; 32 point bold
  218.   ENDIF
  219.   BACKSTOP
  220.   PAGE
  221.   WIZPIC wizpics\monwiz.gif
  222.   PROMPT Font to use
  223.   TYPE FONT
  224.   NAME textPixFont
  225.   DESCRIPTION You can pick the font and size to be used in creating a picture with the person's name.  You can choose any font which is installed on your computer.  Since the person's name will be made into a picture, you don't have to worry whether the font is installed on a browser's system.\n\nSelect a font for the text.
  226. ENDIF
  227.  
  228. IF inpL2 = 2
  229.   IF textPixColor = ""
  230.     SET textPixColor = "128,0,0"              ;maroon
  231.   ENDIF
  232.   BACKSTOP
  233.   PAGE
  234.   WIZPIC wizpics\wiztheme.gif
  235.   TYPE SIMPLECOLOR
  236.   DESCRIPTION Pick a color for the text.  Make sure the color you choose provides enough contrast with the background color you have chosen.\n\nClick on one of the colored squares below to choose the color you desire.
  237.   NAME textPixColor
  238. ENDIF
  239.  
  240. IF inpL2 = 3
  241.   IF textPixBGColor = ""
  242.     SET textPixBGColor = "192,192,192"        ;silver
  243.   ENDIF
  244.   BACKSTOP
  245.   PAGE
  246.   WIZPIC wizpics\wiztheme.gif
  247.   TYPE SIMPLECOLOR
  248.   DESCRIPTION Select a background color for the text picture.  Make sure the color you choose provides enough contrast with the text color you have chosen.\n\nClick on one of the colored squares below to choose the color you desire.
  249.   NAME textPixBGColor
  250. ENDIF
  251.  
  252.  
  253. IF inpL2 <> 4
  254.   GOTO ChangeTextPixCfg
  255. ENDIF
  256. MESSAGEBOX "The changes you have made will only apply to new family members you create after this.   If you want to have these changes affect members you have already set up, choose the family member and change their photo to force the change to be made."
  257.  
  258.  
  259.  
  260. ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx CANCEL PROCESSING xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  261. [Exit Cancel]
  262. IF straightOut = 1 && nRightOuts < 999
  263.   LOADVARIABLES
  264.   ARGUMENT modulepath( "WWDATA.VAR" )
  265.   ARGUMENT nRightOuts
  266.  
  267.   SETTEMP nRightOuts = add( nRightOuts 1 )
  268.  
  269.   IF nRightOuts > 3
  270.     SETTEMP nRightOuts = 999
  271.   ENDIF
  272.  
  273.   SAVEVARIABLES
  274.   ARGUMENT modulepath( "WWDATA.VAR" )
  275.   ARGUMENT nRightOuts
  276. ENDIF
  277.  
  278. BUSY 1
  279. ARGUMENT "Before stopping, the wizard must update any changed pages in your site and store all his tools until next time.  It will take just a moment."
  280.  
  281. SETTEMP pers_fam_mode = "personal"
  282. IF doBuild = YY    ;finalize pending changes
  283.   GOSUB BuildMemberPages
  284. ENDIF
  285.  
  286. SETTEMP pers_fam_mode = "family"
  287. IF FavBuild = YY
  288.   SETTEMP favoritesVarRoot = ""
  289.   GOSUB BuildFamFavoritesPages
  290.   BUILDLINKS
  291. ENDIF
  292.  
  293. IF NotionBuild = YY
  294.   SETTEMP notionVarRoot = ""
  295.   GOSUB BuildFamNotionPages
  296.   BUILDLINKS
  297. ENDIF
  298.  
  299. IF PastimesBuild = YY
  300.   SETTEMP pastimeVarRoot = ""
  301.   GOSUB BuildPastimePages
  302.   BUILDLINKS
  303. ENDIF
  304.  
  305. GOSUB SaveVariables
  306. BUSY 0
  307.  
  308. IF nLoads < 35
  309.  SETTEMP temp = "Don't forget!  To restart the Homepage Expert and get the guidance of your friendly wizard family, use the menu bar at the top of the program."
  310.  SETTEMP temp2 = "Click on the menu labeled   Website   and then choose the item   Homepage Expert    to get right back to make changes, additions, to publish, or anything else."
  311.  MESSAGEBOX temp,"   ",temp2
  312. ENDIF
  313.  
  314.  
  315.  
  316. [SaveVariables] ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  317. SAVEVARIABLES
  318. ARGUMENT changeextension( ProjectFile "VAR" )
  319.  
  320. SETTEMP lastProject = ProjectFile
  321. SAVEVARIABLES
  322. ARGUMENT modulepath( "WWDATA.VAR" )
  323. ARGUMENT lastProject
  324.  
  325.  
  326. ;xxxxxxxxxxxxxxxxxx BUILD THE FUN LINKS PAGE xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  327. [MakeLinksPage]
  328. SETPARENTTOPIC pageContents
  329.  
  330. BUILDTOPIC "##Links"
  331. REPLACE pageLinks
  332. "Links"
  333. none                 ; backdrop
  334. 1                    ; level
  335. 0                    ; links
  336. 1                    ; # of fields
  337. "The ",familyLastName," Family Links Page"
  338.  
  339. SET pageLinks = topicfromsymbolic( "##Links" )
  340.  
  341.  
  342.  
  343. ;xxxxxxxxxxxxxxxxxxxx COMPACT FIELDS xxxxxxxxxxxxxxxxxxxxxxxxx
  344. [CompactFields]
  345. ; prior to this, place the root name of the variables
  346. ; to compact in fieldRootName and the number of fields
  347. ; in nTotalFields.  To reflect changes in a second array,
  348. ; set the variable reflectRootName
  349.  
  350. SETTEMP nField = 1
  351. SETTEMP nFields = nTotalFields
  352. GOSUB CompactFieldsAux
  353. SET reflectRootName = ""
  354.  
  355. [CompactFieldsAux]
  356. IF nFields > 0
  357.   SETTEMP thisFieldVar = fieldRootName,nField
  358.   SETTEMP thisValue = eval( thisFieldVar )
  359.   IF thisValue = ""
  360.     GOSUB CompactSingleField
  361.   ELSE
  362.     SET nField = add( nField 1 )
  363.   ENDIF
  364.   SET nFields = subtract( nFields 1 )
  365.   GOTO CompactFieldsAux
  366. ENDIF
  367.  
  368. [CompactSingleField]
  369. ; moves fields above this field down by one
  370. SETTEMP moveTo = nField
  371. SETTEMP nextToMove = add( nField 1 )
  372. GOTO CompactSingleFieldAux
  373.  
  374. [CompactSingleFieldAux]
  375. COPY eval( fieldRootName,moveTo ) = eval( fieldRootName,nextToMove )
  376. IF reflectRootName <> ""
  377.   COPY eval( reflectRootName,moveTo ) = eval( reflectRootName,nextToMove )
  378. ENDIF
  379. SETTEMP moveTo = nextToMove
  380. SETTEMP nextToMove = add( nextToMove 1 )
  381.  
  382. IF nextToMove <= nTotalFields
  383.   GOTO CompactSingleFieldAux
  384. ENDIF
  385.  
  386.  
  387. ;xxxxxxxxxxx SELECT PLACEHOLDER FAMILY PHOTO xxxxxxxxxxxxxxxxxxx
  388. [GetFamPlaceholderPix]
  389. SETTEMP fampix_prompt = "Since you don't have a family photo in digital format, you can substitute a general picture in place of your family photo.\n\nLater, when you get a digital format photograph of the family (or if you find another picture you like better), you can use the wizard to automatically substitute it throughout your Web site."
  390.  
  391. PAGE
  392. WIZPIC wizpics\wizphoto.gif
  393. TYPE LIST
  394. DESCRIPTION_RE fampix_prompt
  395. NAME newPhoto
  396. PROMPT &Family picture:
  397. ARGUMENT "Gold crest"@clip_art\designer\emblem.jpg@"clip_art\designer\emblem.jpg"
  398. ARGUMENT "Oil painting on canvas"@clip_art\designer\art_8.jpg@"clip_art\designer\art_8.jpg"
  399. ARGUMENT "Basket of vegetables"@clip_art\designer\veg_bskt.jpg@"clip_art\designer\veg_bskt.jpg"
  400. ARGUMENT "Summer morning"@clip_art\designer\landscp1.jpg@"clip_art\designer\landscp1.jpg"
  401. ARGUMENT "Big bang on the coast"@clip_art\designer\kaboom.jpg@"clip_art\designer\kaboom.jpg"
  402. ARGUMENT "Jelly beans"@clip_art\designer\jelly_bs.jpg@"clip_art\designer\jelly_bs.jpg"
  403. ARGUMENT "Seaside pond"@clip_art\designer\landscp3.jpg@"clip_art\designer\landscp3.jpg"
  404. ARGUMENT "Party hearty"@clip_art\designer\partydec.jpg@"clip_art\designer\partydec.jpg"
  405. ARGUMENT "Morning fruit ensemble"@clip_art\designer\fruits.jpg@"clip_art\designer\fruits.jpg"
  406. ARGUMENT "Hillside brook"@clip_art\designer\landscp2.jpg@"clip_art\designer\landscp2.jpg"
  407. ARGUMENT "Blue water colors"@clip_art\designer\art_9.jpg@"clip_art\designer\art_9.jpg"
  408.  
  409.  
  410.  
  411.  
  412. ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  413. ;xxxxxxxxxxxxxxxxxxxx E-MAIL DIRECTORY xxxxxxxxxxxxxxxxxxxx
  414. [AddOrEditMailBook]
  415. SETDIVIDER emailNames = "|"
  416. SETDIVIDER emailpictures = "|"
  417. SETDIVIDER emailAddresses = "|"
  418.  
  419. BACKSTOP MailBookTop
  420. SET nEmails = countelements( emailAddresses )
  421.  
  422. SETTEMP inpL2 = 3
  423.  
  424. SETTEMP temp = "This section allows you to add and maintain a 'Family and Friends E-Mail Directory' within your family Web site, with up to 25 different people and their E-Mail addresses.  You can add, modify, and remove entries in this listing.\n\nChoose from the list below to proceed."
  425. IF nEmails > 0
  426.   PAGE
  427.   WIZPIC wizpics\mailwiz.gif
  428.   TYPE RADIOBUTTONS
  429.   DESCRIPTION_RE temp
  430.   NAME inpL2
  431.   ARGUMENT "&Add a new E-Mail entry"@0
  432.   ARGUMENT "&Modify an existing entry"@1
  433.   ARGUMENT "&Remove an entry from the list"@2
  434.   ARGUMENT "&Done with E-Mail Directory"@3
  435.   NOPREVIOUS
  436. ELSE
  437.   PAGE
  438.   WIZPIC wizpics\mailwiz.gif
  439.   TYPE RADIOBUTTONS
  440.   DESCRIPTION_RE temp
  441.   NAME inpL2
  442.   ARGUMENT "&Add a new E-Mail entry"@0
  443.   ARGUMENT "&Done with E-Mail Directory"@3
  444. ENDIF
  445.  
  446. IF inpL2 = 0 ;add
  447.   SETTEMP nEmailEntry = add( nEmails 1 )
  448.   GOSUB EditEmailEntry
  449.   GOTO AddOrEditMailBook
  450. ENDIF
  451.  
  452. IF inpL2 = "1" ;edit
  453.   IF nEmails > 1
  454.     GOSUB PickMailEntry
  455.   ELSE
  456.     SETTEMP nEmailEntry = 1
  457.   ENDIF
  458.   GOSUB EditEmailEntry
  459.   GOTO AddOrEditMailBook
  460. ENDIF
  461.  
  462. IF inpL2 = "2" ;delete
  463.   IF nEmails > 1
  464.     GOSUB PickMailEntry
  465.   ELSE
  466.     SETTEMP nEmailEntry = 1
  467.   ENDIF
  468.  
  469.   MESSAGEBOX "Are you sure you want to remove the entry for ",arrayelement( emailNames nEmailEntry ),"?"
  470.   ARGUMENT sure,2,2
  471.  
  472.   IF sure = YY
  473.     GOSUB RemoveEmailEntry
  474.   ENDIF
  475.   GOTO AddOrEditMailBook
  476. ENDIF
  477.  
  478. IF inpL2 = "3"
  479.   SET nEmails = countelements( emailAddresses )
  480.   IF nEmails > 0
  481.     GOSUB BuildEmailDirectory
  482.     SET dummyMailBook = NN
  483.     SET hasMailBook = 1
  484.   ENDIF
  485. ENDIF
  486.  
  487.  
  488. [EditEmailEntry]
  489. SETTEMP field1 = arrayelement( emailNames nEmailEntry )
  490. SETTEMP field2 = arrayelement( emailAddresses nEmailEntry )
  491. SETTEMP pixfield = arrayelement( emailPictures nEmailEntry )
  492.  
  493. BACKSTOP NameEntry
  494. PAGE
  495. NOSPELLCHECK
  496. DESCRIPTION If you have a photo of the person whose E-Mail address you are listing, you can include it too!  If you do not have a photo, just leave the first box blank.\n\nIn the second box, enter the person's name  as you would like it to appear on the directory listing page.  For example, you could enter 'Fred Colson' or 'Aunt Sophie'.
  497. WIZPIC wizpics\mailwiz.gif
  498. TYPE PICTUREANDCAPTION
  499. PROMPT P&icture (this is optional):
  500. NAME pixfield
  501. ARGUMENT Person's N&ame:@field1
  502.  
  503. IF field1 = ""
  504.   MESSAGEBOX "You cannot leave the name blank.  This is how the person will be recognized on the directory page."
  505.   UNWIND NameEntry
  506. ENDIF
  507.  
  508. IF pixfield <> ""
  509.  SETTYPE pixfield = normal
  510.  SETSCALE pixfield = 120 120
  511. ENDIF
  512.  
  513. BACKSTOP
  514. PAGE
  515. NOSPELLCHECK
  516. DESCRIPTION_RE "Now enter the E-Mail address for ",field1,".\n\nIt will be some name, separated by the 'at sign' (@), followed by a network server.  For example,  billy@hotnet.com     or     martha352@aol.com."
  517. WIZPIC wizpics\mailwiz.gif
  518. TYPE EDIT
  519. NAME field2
  520. PROMPT &E-Mail Address:
  521.  
  522. SET arrayelement( emailNames nEmailEntry ) = field1
  523. SET arrayelement( emailAddresses nEmailEntry ) = field2
  524. SET arrayelement( emailPictures nEmailEntry ) = pixfield
  525.  
  526.  
  527.  
  528. [PickMailEntry]
  529. SETTEMP nEmailEntry = 1
  530. BACKSTOP
  531. PAGE
  532. WIZPIC wizpics\mailwiz.gif
  533. DESCRIPTION Pick an entry from the list shown below.  Highlight the desired entry and then press the Next button.
  534. TYPE LIST
  535. NAME nEmailEntry
  536. ARGUMENT arrayelement( emailNames 1 )@1
  537. ARGUMENT arrayelement( emailNames 2 )@2
  538. ARGUMENT arrayelement( emailNames 3 )@3
  539. ARGUMENT arrayelement( emailNames 4 )@4
  540. ARGUMENT arrayelement( emailNames 5 )@5
  541. ARGUMENT arrayelement( emailNames 6 )@6
  542. ARGUMENT arrayelement( emailNames 7 )@7
  543. ARGUMENT arrayelement( emailNames 8 )@8
  544. ARGUMENT arrayelement( emailNames 9 )@9
  545. ARGUMENT arrayelement( emailNames 10 )@10
  546. ARGUMENT arrayelement( emailNames 11 )@11
  547. ARGUMENT arrayelement( emailNames 12 )@12
  548. ARGUMENT arrayelement( emailNames 13 )@13
  549. ARGUMENT arrayelement( emailNames 14 )@14
  550. ARGUMENT arrayelement( emailNames 15 )@15
  551. ARGUMENT arrayelement( emailNames 16 )@16
  552. ARGUMENT arrayelement( emailNames 17 )@17
  553. ARGUMENT arrayelement( emailNames 18 )@18
  554. ARGUMENT arrayelement( emailNames 19 )@19
  555. ARGUMENT arrayelement( emailNames 20 )@20
  556. ARGUMENT arrayelement( emailNames 21 )@21
  557. ARGUMENT arrayelement( emailNames 22 )@22
  558. ARGUMENT arrayelement( emailNames 23 )@23
  559. ARGUMENT arrayelement( emailNames 24 )@24
  560. ARGUMENT arrayelement( emailNames 25 )@25
  561.  
  562.  
  563. [RemoveEmailEntry]
  564. IF nEmails = 1
  565.   SET emailNames = ""
  566.   SET emailPictures = ""
  567.   SET emailAddresses = ""
  568.   SET nEmails = 0
  569. ELSE
  570.   GOTO RemoveEmailEntryX
  571. ENDIF
  572.  
  573. [RemoveEmailEntryX]
  574. IF nEmailEntry <= 25
  575.   SETTEMP next = add( nEmailEntry 1 )
  576.   SET arrayelement( emailNames nEmailEntry ) = arrayelement( emailNames next )
  577.   SET arrayelement( emailPictures nEmailEntry ) = arrayelement( emailPictures next )
  578.   SET arrayelement( emailAddresses nEmailEntry ) = arrayelement( emailAddresses next )
  579.   SET nEmailEntry = next
  580.   GOTO RemoveEmailEntryX
  581. ENDIF
  582. SET nEmails = subtract( nEmails 1 )
  583.  
  584.  
  585.  
  586. [BuildEmailDirectory]
  587. BUSY 1
  588. ARGUMENT "Please wait for a moment while the wizard builds your E-Mail directory page, and updates your site."
  589. SETDIVIDER emailNames = "|"
  590. SETDIVIDER emailpictures = "|"
  591. SETDIVIDER emailAddresses = "|"
  592. SET nEmails = countelements( emailAddresses )
  593.  
  594. CLOSETOPICS 1
  595. CLOSETOPICS 0
  596.  
  597. SETPARENTTOPIC pageContents
  598.  
  599. SETTEMP temp = "The ",familyLastName," Family"
  600. SETTEMP temp2 = temp," E-Mail Directory"
  601.  
  602. BUILDTOPIC "##FamMailBookPage"
  603. REPLACE pageMailBook
  604. "Family email addresses"
  605. none
  606. 1
  607. 0                  ; links
  608. 2                  ; # fields
  609. temp
  610. temp2
  611.  
  612. SET pageMailBook = topicfromsymbolic( "##FamMailBookPage" )
  613.  
  614. BUILDLINKS
  615.  
  616. OPENTOPIC pageMailBook
  617.  
  618. SETTEMP nEmailEntry = 1
  619. GOSUB BuildEmailEntries
  620. CLOSETOPICS 1
  621. CLOSETOPICS 0
  622.  
  623. GOSUB BuildHomePage
  624. BUILDLINKS
  625. BUSY 0
  626.  
  627.  
  628. [BuildEmailEntries]
  629. CARET 1
  630. SETTEMP field1 = arrayelement( emailNames nEmailEntry )
  631. SETTEMP field2 = arrayelement( emailAddresses nEmailEntry )
  632. SETTEMP pixfield = arrayelement( emailPictures nEmailEntry )
  633. SETTYPE pixfield = normal
  634. IF pixfield = ""
  635.   RUNTEMPLATE "EMail entry"
  636.   FIELD field1
  637.   FIELD field2
  638.   LINK  "mailto:",field2
  639. ELSE
  640.   SETSCALE pixfield = 100 60
  641.   SETTYPE pixfield = picture
  642.   RUNTEMPLATE "EMail entry with picture"
  643.   FIELD field1
  644.   FIELD field2
  645.   FIELD pixfield
  646.   LINK  "mailto:",field2
  647.   LINK  "mailto:",field2
  648. ENDIF
  649.  
  650. SETTEMP nEmailEntry = add( nEmailEntry 1 )
  651. IF nEmailEntry <= nEmails
  652.   GOTO BuildEmailEntries
  653. ENDIF
  654.  
  655. ;xxxxxxxxxxxxxxxxxxx MAKE EMPTY PAGE xxxxxxxxxxxxxxxxxxxxxxx
  656. [MakeEmptyPage]
  657.  
  658. SETPARENTTOPIC = ""
  659.  
  660. BUILDTOPIC emptyPageName
  661. REPLACE emptyPageIntName
  662. "Empty Page"
  663. none       ; backdrop
  664. 0          ; level
  665. 0          ; links
  666. 1          ; # of fields
  667. "Unused Page"
  668.  
  669. [CommonInit]
  670. SETTEMP YY = "Yes"
  671. SETTEMP NN = "No"
  672. SETTEMP temp = ""
  673. SETTEMP temp2 = ""
  674. SETTEMP inpL1 = 0
  675. SETTEMP inpL2 = 0
  676. SETTEMP inpL0 = 0
  677. SETTEMP PrevwTxt = "Wait just a moment as the wizard prepares files for your browser.  Then, the wizard will launch your Browser program.  You may need to maximize your browser program when it starts."
  678. SETTEMP field1 = ""
  679. SETTEMP field2 = ""
  680. SETTEMP field3 = ""
  681. SETTEMP field4 = ""
  682. SETTEMP field5 = ""
  683. SETTEMP pixfield = ""
  684. SETTEMP straightOut = 1
  685.